package de.hypoport.einarbeitung.scrumspirit;

import org.apache.wicket.PageParameters;
import org.apache.wicket.markup.html.WebPage;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.link.BookmarkablePageLink;
import org.apache.wicket.model.AbstractReadOnlyModel;
import org.apache.wicket.spring.injection.annot.SpringBean;

import de.hypoport.einarbeitung.scrumspirit.beans.Mitarbeiter;
import de.hypoport.einarbeitung.scrumspirit.view.MitarbeiterEingabePage;
import de.hypoport.einarbeitung.scrumspirit.view.MitarbeiterListePage;

/**
 * Homepage
 */
public class HomePage extends WebPage {

	private static final long serialVersionUID = 1L;

	@SpringBean
	private Mitarbeiter mitarbeiter;


    /**
	 * Constructor that is invoked when page is invoked without a session.
	 *
	 * @param parameters
	 *            Page parameters
	 */
    public HomePage(final PageParameters parameters) {

        // Add the simplest type of label
        add(new Label("message", "If you see this message wicket is properly configured and running by "));

        add(new Label("secondmessage", new AbstractReadOnlyModel<String>() {
			private static final long serialVersionUID = -2660194895259568580L;

			@Override
			public String getObject() {
				if (mitarbeiter == null)
				{
					return "Mitarbeiter SpringBean nicht initialisiert";
				}
				return mitarbeiter.getVorname();
			}
        }
		));

		add(new BookmarkablePageLink<MitarbeiterEingabePage>("linkeinma",
				MitarbeiterEingabePage.class));

		add(new BookmarkablePageLink<MitarbeiterListePage>("linkallema",
				MitarbeiterListePage.class));

    }
}
